/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Manager;

/**
 *
 * @author Diego Ruiz
 */
import Negocio.Ciudad;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.NotSerializableException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.ArrayList;

/**
 *
 * @author Diego
 */
public class ManagerCiudad {

    /**
     * carga los datos almacenados del archivo city.dat
     * @return ArrayList ciudad (arreglo)
     */
    public ArrayList<Ciudad> cargarDatosCiudad() throws FileNotFoundException, IOException, ClassNotFoundException {
        ArrayList<Ciudad> vCiudad1 = new ArrayList<Ciudad>();
        Ciudad empleado = new Ciudad();

        FileInputStream entArch = new FileInputStream("city.dat");
        ObjectInputStream entStream = new ObjectInputStream(entArch);

        while (entArch.available() != 0) {
            empleado = (Ciudad) entStream.readObject();
            vCiudad1.add(empleado);
        }
        return vCiudad1;

    }

    /**
     * recibe el vector y guarda el objeto; para que este objeto sea grabado en el archivo city.dat atraves de la clase ObjectOutputStream
     * @param vCiudad1
     * definido como ArrayList de la clase ciudad
     */
    public void guardarDatosCiudad(ArrayList<Ciudad> vCiudad1) throws IOException, NotSerializableException {
        FileOutputStream salArch = new FileOutputStream("city.dat");
        ObjectOutputStream salStream = new ObjectOutputStream(salArch);


        for (int i = 0; i < vCiudad1.size(); i++) {
            Ciudad empleado1 = vCiudad1.get(i);
            salStream.writeObject(empleado1);
        }
    }
}
